package com.faya.green.dao.user;

import com.faya.green.model.Punish;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author ：LX
 * 创建时间： 2018/8/24. 21:04
 * 地点：广州
 * 目的: 违纪信息
 * 备注说明：
 */
public interface PunishDao {

    /**
     * 更新 违纪信息
     * @param punish 违纪信息
     */
    void updatePunish(Punish punish);

    /**
     * 新增 违纪信息
     * @param punish 违纪信息
     */
    void addPunish(Punish punish);

    /**
     * 根据主键查询违纪信息
     * @param id 违纪主键
     * @return
     */
    @Select("select * from Punish where status != '2' and id=#{id,jdbcType=VARCHAR}")
    Punish getPunishById(String id);

    /**
     * 获取指定用户的 公开 或非公开的 违纪信息
     * @param userId 用户id
     * @param isPubilc 是否公开 Constant.YES  Constant.no，不填了则查询全部
     * @return
     */
    List<Punish> getPunishByUserIdPubilc(@Param("userId") String userId, @Param("isPubilc")String isPubilc);

    /**
     * 删除 违纪信息
     * @param id 违纪id
     */
    @Delete("delete from punish where id=#{id,jdbcType=VARCHAR}")
    void delPunish(String id);
}
